package com.ruoyi.system.domain.sys;


import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.model.BaseModel;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;

import java.util.Date;

/**
 * OSS对象存储对象 sys_oss
 *
 * @author ruoyi
 * @date 2024-03-05
 */
@Data
@SuperBuilder
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@TableName("sys_oss")
public class SysOss extends BaseModel {

    private static final long serialVersionUID = 1L;

    /**
     * 对象存储主键
     */
    @Excel(name = "对象存储主键", sort = 0)
    @TableId(value = "oss_id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long ossId;

    /**
     * 文件名
     */
    @Excel(name = "文件名", sort = 1)
    private String fileName;

    /**
     * 原名
     */
    @Excel(name = "原名", sort = 2)
    private String originalName;

    /**
     * 文件后缀名
     */
    @Excel(name = "文件后缀名", sort = 3)
    private String fileSuffix;

    /**
     * URL地址
     */
    @Excel(name = "URL地址", sort = 4)
    private String url;

    /**
     * 服务商
     */
    @Excel(name = "服务商", sort = 5)
    private String service;


    /**
     * 开始时间
     */
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date beginTime;

    /**
     * 结束时间
     */
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;
}

